package com.addplus.townmall.server.api.service.web.authoritymodule;

import com.addplus.townmall.server.api.model.authority.User;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

public interface UserService {

    User selectByUsername(String account);

    Boolean updateLoginUser(User user)throws Exception;

    Boolean addUser(User user) throws Exception;

    Boolean deleteUserById(Integer id) throws Exception;

    User selectUserById(Integer id) throws Exception;

    /**
     * 描述: 管理员修改账户,被冻结的也需要查出来
     * @param
     * @return
     * @throws Exception
     * @api {}
     * @author qiniu
     * @date 21/12/2017 3:49 PM
     * @version V1.0
     */
    User modifyUserGetInfoById(Integer id) throws Exception;

    /**
     * 描述: 加密密码字符串
     * @param
     * @return
     * @throws Exception
     * @api {}
     * @author qiniu
     * @date 01/01/2018 4:27 PM
     * @version V1.0
     */
    String encryptString(User user) throws Exception;

    Boolean updateUser(User user) throws Exception;

    Page<User> getAllUsers(Integer pageNo, Integer pageSize) throws Exception;

    User getByUser() throws Exception;

    Integer getUserNameCount(String account) throws Exception;

}
